Proposal by Viktor Kerkez for Pharo/Squeak integration with git/mercurial

Proposed by Viktor Kerkez (profile, biography) Don't forget to submit this proposal to official Google Melange site too!


How will I do that project

Since I'm already very familiar with mercurial and have a lot of python experience I would suggest creating a mercurial integration with sqeuak/pharo.

First I'll examine at the existing SqueakSVN and Montichello projects for the mapping format they use, workflow, project detection, change set creation, etc. Then I'll take a look at some of the existing Mercurial integrations in the IDEs (for example Eclipse integration), because I think that the methodology used there can be very nicely integrated in the smalltalk development tools.

After that the repository format should be defined. My current opinion is that the way Montichello does the of detecting the project can be used and let Mercurial do the rest. If this is true or the SqeuakSVN format is the better option, I'll just use them as a front end. Then I'll create an interface for the mercurial command line application for the rest of the job. So, from smalltalk I'll do the creation of the repository structure, and then use the command line interface for the rest.

Suggested timeline and milestones

2 weeks. - Analysis of the SqueakSVN and Montichello

1 week - Analysis of the Mercurial IDE integrations

3 weeks - Implementation of the Smalltalk's part of the job (repository structure)

2 weeks - Implementation of the mercurial command line interface calling

4 weeks - Integration with the development tools.

Where I see the risks

Currently the execution of the external processes is not perfect, so probably this project will be the first beta tester of the Coral GSOC project :)

How the results will look like

I hope it will look similar to Eclipse or VisualStudio integrations of the Mercurial VCS, at least from the usability perspective.




Updated: 9.4.2010